package com.hk.commons.vo;

import java.math.BigDecimal;

public class UserCardMsg {
	
	private Long userCardId;
	
	private Long cardId;
	
	private int cardType;
	
	private String cardTypeStr;
	
	private BigDecimal faceValue;
	
	private String faceValueStr;
	
	private int status;
	
	private String statusStr;
	
	private String cardTitle;
	
	private String cardDesc;
	
	private String cardSubDesc;
	
	private String cardGetTime;
	
	private String cardExpireTime;

	private int cardDays;

	private String exchangeCode;

	private String exchangePassword;

	//额外字段 展示模式
	private Integer display = 0;

	public Integer getDisplay() {
		return display;
	}

	public void setDisplay(Integer display) {
		this.display = display;
	}

	public Long getUserCardId() {
		return userCardId;
	}

	public void setUserCardId(Long userCardId) {
		this.userCardId = userCardId;
	}

	public Long getCardId() {
		return cardId;
	}

	public void setCardId(Long cardId) {
		this.cardId = cardId;
	}

	public int getCardType() {
		return cardType;
	}

	public void setCardType(int cardType) {
		this.cardType = cardType;
	}

	public String getCardTypeStr() {
		return cardTypeStr;
	}

	public void setCardTypeStr(String cardTypeStr) {
		this.cardTypeStr = cardTypeStr;
	}

	public BigDecimal getFaceValue() {
		return faceValue;
	}

	public void setFaceValue(BigDecimal faceValue) {
		this.faceValue = faceValue;
	}

	public String getFaceValueStr() {
		return faceValueStr;
	}

	public void setFaceValueStr(String faceValueStr) {
		this.faceValueStr = faceValueStr;
	}

	public int getStatus() {
		return status;
	}

	public void setStatus(int status) {
		this.status = status;
	}

	public String getCardTitle() {
		return cardTitle;
	}

	public void setCardTitle(String cardTitle) {
		this.cardTitle = cardTitle;
	}

	public String getCardDesc() {
		return cardDesc;
	}

	public void setCardDesc(String cardDesc) {
		this.cardDesc = cardDesc;
	}

	 

	public String getStatusStr() {
		return statusStr;
	}

	public void setStatusStr(String statusStr) {
		this.statusStr = statusStr;
	}

	public String getCardGetTime() {
		return cardGetTime;
	}

	public void setCardGetTime(String cardGetTime) {
		this.cardGetTime = cardGetTime;
	}

	public String getCardExpireTime() {
		return cardExpireTime;
	}

	public void setCardExpireTime(String cardExpireTime) {
		this.cardExpireTime = cardExpireTime;
	}

	
	public String getCardSubDesc() {
		return cardSubDesc;
	}

	public void setCardSubDesc(String cardSubDesc) {
		this.cardSubDesc = cardSubDesc;
	}

	public int getCardDays() {
		return cardDays;
	}

	public void setCardDays(int cardDays) {
		this.cardDays = cardDays;
	}

    public String getExchangeCode() {
        return exchangeCode;
    }

    public void setExchangeCode(String exchangeCode) {
        this.exchangeCode = exchangeCode;
    }

    public String getExchangePassword() {
        return exchangePassword;
    }

    public void setExchangePassword(String exchangePassword) {
        this.exchangePassword = exchangePassword;
    }

    @Override
	public String toString() {
		return "UserCardMsg [userCardId=" + userCardId + ", cardId=" + cardId
				+ ", cardType=" + cardType + ", cardTypeStr=" + cardTypeStr
				+ ", faceValue=" + faceValue + ", faceValueStr=" + faceValueStr
				+ ", status=" + status + ", statusStr=" + statusStr
				+ ", cardTitle=" + cardTitle + ", cardDesc=" + cardDesc
				+ ", cardSubDesc=" + cardSubDesc + ", cardGetTime="
				+ cardGetTime + ", cardExprieTime=" + cardExpireTime + "]";
	}

	@Override
	public boolean equals(Object o) {
		if (this == o) return true;
		if (o == null || getClass() != o.getClass()) return false;

		UserCardMsg that = (UserCardMsg) o;

		if (cardType != that.cardType) return false;
		if (status != that.status) return false;
		if (cardDays != that.cardDays) return false;
		if (userCardId != null ? !userCardId.equals(that.userCardId) : that.userCardId != null) return false;
		if (cardId != null ? !cardId.equals(that.cardId) : that.cardId != null) return false;
		if (cardTypeStr != null ? !cardTypeStr.equals(that.cardTypeStr) : that.cardTypeStr != null) return false;
		if (faceValue != null ? !faceValue.equals(that.faceValue) : that.faceValue != null) return false;
		if (faceValueStr != null ? !faceValueStr.equals(that.faceValueStr) : that.faceValueStr != null) return false;
		if (statusStr != null ? !statusStr.equals(that.statusStr) : that.statusStr != null) return false;
		if (cardTitle != null ? !cardTitle.equals(that.cardTitle) : that.cardTitle != null) return false;
		if (cardDesc != null ? !cardDesc.equals(that.cardDesc) : that.cardDesc != null) return false;
		if (cardSubDesc != null ? !cardSubDesc.equals(that.cardSubDesc) : that.cardSubDesc != null) return false;
		if (cardGetTime != null ? !cardGetTime.equals(that.cardGetTime) : that.cardGetTime != null) return false;
		return !(cardExpireTime != null ? !cardExpireTime.equals(that.cardExpireTime) : that.cardExpireTime != null);

	}

	@Override
	public int hashCode() {
		int result = userCardId != null ? userCardId.hashCode() : 0;
		result = 31 * result + (cardId != null ? cardId.hashCode() : 0);
		result = 31 * result + cardType;
		result = 31 * result + (cardTypeStr != null ? cardTypeStr.hashCode() : 0);
		result = 31 * result + (faceValue != null ? faceValue.hashCode() : 0);
		result = 31 * result + (faceValueStr != null ? faceValueStr.hashCode() : 0);
		result = 31 * result + status;
		result = 31 * result + (statusStr != null ? statusStr.hashCode() : 0);
		result = 31 * result + (cardTitle != null ? cardTitle.hashCode() : 0);
		result = 31 * result + (cardDesc != null ? cardDesc.hashCode() : 0);
		result = 31 * result + (cardSubDesc != null ? cardSubDesc.hashCode() : 0);
		result = 31 * result + (cardGetTime != null ? cardGetTime.hashCode() : 0);
		result = 31 * result + (cardExpireTime != null ? cardExpireTime.hashCode() : 0);
		result = 31 * result + cardDays;
		return result;
	}
}
